<!DOCTYPE html>
<html>

<head>
  <title>Quarkus 1.5 released - fast-jar packaging format, Picocli, gRPC, GraphQL and more</title>
  <script id="adobe_dtm" src="https://www.redhat.com/dtm.js" type="text/javascript"></script>
  <script src="/assets/javascript/highlight.pack.js" type="text/javascript"></script>
  <META HTTP-EQUIV='Content-Security-Policy' CONTENT="default-src 'none'; script-src 'self' 'unsafe-eval' 'sha256-ANpuoVzuSex6VhqpYgsG25OHWVA1I+F6aGU04LoI+5s=' 'sha256-ipy9P/3rZZW06mTLAR0EnXvxSNcnfSDPLDuh3kzbB1w=' js.bizographics.com https://www.redhat.com assets.adobedtm.com jsonip.com https://ajax.googleapis.com https://www.googletagmanager.com https://www.google-analytics.com https://use.fontawesome.com; style-src 'self' https://fonts.googleapis.com https://use.fontawesome.com; img-src 'self' *; media-src 'self' ; frame-src https://www.googletagmanager.com https://www.youtube.com; frame-ancestors 'none'; base-uri 'none'; object-src 'none'; form-action 'none'; font-src 'self' https://use.fontawesome.com https://fonts.gstatic.com;">
  <META HTTP-EQUIV='X-Frame-Options' CONTENT="DENY">
  <META HTTP-EQUIV='X-XSS-Protection' CONTENT="1; mode=block">
  <META HTTP-EQUIV='X-Content-Type-Options' CONTENT="nosniff">
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <meta name="description" content="Quarkus: Supersonic Subatomic Java">
  <meta name="twitter:card" content="summary_large_image">
  <meta name="twitter:site" content="@QuarkusIO"> 
  <meta name="twitter:creator" content="@QuarkusIO">
  <meta property="og:url" content="https://quarkus.io/blog/quarkus-1-5-final-released/" />
  <meta property="og:title" content="Quarkus 1.5 released - fast-jar packaging format, Picocli, gRPC, GraphQL and more" />
  <meta property="og:description" content="Quarkus: Supersonic Subatomic Java" />
  <meta property="og:image" content="/assets/images/quarkus_card.png" />
  <link rel="canonical" href="https://quarkus.io/blog/quarkus-1-5-final-released/">
  <link rel="shortcut icon" type="image/png" href="/favicon.ico" >
  <link rel="stylesheet" href="https://quarkus.io/guides/stylesheet/config.css" />
  <link rel="stylesheet" href="/assets/css/main.css" />
  <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.1.0/css/all.css" integrity="sha384-lKuwvrZot6UHsBSfcMvOkWwlCMgc0TaWr+30HWe3a4ltaBwTZhyTEggF5tJv8tbt" crossorigin="anonymous">
  <link rel="alternate" type="application/rss+xml"  href="https://quarkus.io/feed.xml" title="Quarkus">
  <script src="https://quarkus.io/assets/javascript/goan.js" type="text/javascript"></script>
  <script src="https://quarkus.io/assets/javascript/hl.js" type="text/javascript"></script>
</head>

<body class="post">
  <!-- Google Tag Manager (noscript) -->
  <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-NJWS5L"
  height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
  <!-- End Google Tag Manager (noscript) -->

  <div class="nav-wrapper">
  <div class="grid-wrapper">
    <div class="width-12-12">
      <input type="checkbox" id="checkbox" />
      <nav id="main-nav" class="main-nav">
  <div class="container">
    <div class="logo-wrapper">
      
        <a href="/"><img src="/assets/images/quarkus_logo_horizontal_rgb_600px_reverse.png" class="project-logo" title="Quarkus"></a>
      
    </div>
    <label class="nav-toggle" for="checkbox">
      <i class="fa fa-bars"></i>
    </label>
    <div id="menu" class="menu">
      <span>
        <a href="/get-started/" class="">Get Started</a>
      </span>
      <span>
        <a href="/guides/" class="">Guides</a>
      </span>
      <span>
        <a href="/community/" class="">Community</a>
      </span>
      <span>
        <a href="/support/" class="">Support</a>
      </span>
      <span>
        <a href="/blog/" class="active">Blog</a>
      </span>
      <span>
        <a href="https://code.quarkus.io" class="button-cta secondary white">Start Coding</a>
      </span>
    </div>
  </div>
      </nav>
    </div>
  </div>
</div>

  <div class="content">
    <div class="post-page grid-wrapper">
  <div class="width-8-12 width-12-12-m doc-content">
    <div class="grid-wrapper">
      <div class="width-12-12">
        <p>
          <a href="/blog"><i class="fas fa-angle-left"></i> Back to all posts</a>
        </p>
      </div>
      <div class="width-12-12">
        <div class="post-date">
          June 03, 2020 
          
            <span class="tags"><a href="/blog/tag/release">#release</a></span>
          
        </div>
        <h1 class="post-title">Quarkus 1.5 released - fast-jar packaging format, Picocli, gRPC, GraphQL and more</h1>
        <div class="grid-wrapper">
          <div class="width-8-12 width-12-12-m byline-wrapper">
            
            
              <img class="headshot" src="https://www.gravatar.com/avatar/ec96387a1a8295b6fd6dffb68f80c352">
            
            <p class="byline">By Guillaume Smet</p>
          </div>
          <div class="width-12-12">
              <div class="paragraph">
<p>Quarkus 1.5.0.Final is finally here with all sorts of bells and whistles:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>New fast-jar packaging format</p>
</li>
<li>
<p>Picocli extension</p>
</li>
<li>
<p>gRPC extension</p>
</li>
<li>
<p>Eclipse MicroProfile GraphQL extension</p>
</li>
<li>
<p>Amazon Services extensions</p>
</li>
<li>
<p>Hibernate ORM REST Data with Panache extension</p>
</li>
<li>
<p>Spring Cache compatibility layer</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>It also includes a lot of bugfixes and small improvements all over the place.</p>
</div>
<div class="sect1">
<h2 id="migration-guide"><a class="anchor" href="#migration-guide"></a>Migration Guide</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Eager to migrate your existing applications? Here is <a href="https://github.com/quarkusio/quarkus/wiki/Migration-Guide-1.5">our migration guide for 1.5</a>.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="whats-new"><a class="anchor" href="#whats-new"></a>What&#8217;s new?</h2>
<div class="sectionbody">
<div class="sect2">
<h3 id="fast-jar-packaging-format"><a class="anchor" href="#fast-jar-packaging-format"></a>Fast-jar packaging format</h3>
<div class="paragraph">
<p>The fast-jar packaging format is introduced as an alternative to the default jar packaging format.
The main goal of this new format is to bring faster startup times.</p>
</div>
<div class="paragraph">
<p>It is very likely that future versions will adopt this format as the default so your feedback is highly welcome on real life applications.</p>
</div>
<div class="paragraph">
<p>You can test it by adding the following lines to your <code>application.properties</code>:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="highlightjs highlight"><code data-lang="properties" class="language-properties hljs">quarkus.package.type=fast-jar</code></pre>
</div>
</div>
<div class="paragraph">
<p>or passing <code>-Dquarkus.package.type=fast-jar</code> when you build.</p>
</div>
</div>
<div class="sect2">
<h3 id="new-extensions"><a class="anchor" href="#new-extensions"></a>New extensions</h3>
<div class="sect3">
<h4 id="picocli"><a class="anchor" href="#picocli"></a>Picocli</h4>
<div class="paragraph">
<p>1.4 introduced command mode and we now have a Picocli extension relying on it to simplify the creation of rich command line applications.</p>
</div>
<div class="paragraph">
<p>Eager to learn more about it? Read the <a href="/guides/picocli">Picocli guide</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="grpc"><a class="anchor" href="#grpc"></a>gRPC</h4>
<div class="paragraph">
<p>gRPC support in Quarkus was a popular request: we now have a set of gRPC extensions that allows to write clients and servers:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="/guides/grpc-getting-started">Getting started with gRPC</a></p>
</li>
<li>
<p><a href="/guides/grpc-service-implementation">Implementing a gRPC Service</a></p>
</li>
<li>
<p><a href="/guides/grpc-service-consumption">Consuming a gRPC Service</a></p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="microprofile-graphql"><a class="anchor" href="#microprofile-graphql"></a>MicroProfile GraphQL</h4>
<div class="paragraph">
<p>Speaking of popular requests, Quarkus 1.5 introduces a GraphQL extension implementing Eclipse MicroProfile GraphQL.</p>
</div>
<div class="paragraph">
<p>How to create and consume GraphQL services is explained in details in the <a href="/guides/microprofile-graphql">MicroProfile GraphQL guide</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="amazon-services"><a class="anchor" href="#amazon-services"></a>Amazon Services</h4>
<div class="paragraph">
<p>We had Amazon DynamoDB support for quite a while, this has been generalized to support more Amazon services:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><a href="/guides/amazon-dynamodb">Amazon DynamoDB</a> - NoSQL database</p>
</li>
<li>
<p><a href="/guides/amazon-kms">Amazon KMS</a> - Key Management Service</p>
</li>
<li>
<p><a href="/guides/amazon-s3">Amazon S3</a> - Object storage service</p>
</li>
<li>
<p><a href="/guides/amazon-ses">Amazon SES</a> - Email service</p>
</li>
<li>
<p><a href="/guides/amazon-sns">Amazon SNS</a> - Notification service</p>
</li>
<li>
<p><a href="/guides/amazon-sqs">Amazon SQS</a> - Queue service</p>
</li>
</ul>
</div>
</div>
<div class="sect3">
<h4 id="hibernate-orm-rest-data-with-panache"><a class="anchor" href="#hibernate-orm-rest-data-with-panache"></a>Hibernate ORM REST Data with Panache</h4>
<div class="paragraph">
<p>The purpose of the <code>with Panache</code> extensions is to simplify a set of features and bring back developer joy.</p>
</div>
<div class="paragraph">
<p>In Quarkus 1.5, we introduce Hibernate ORM REST Data with Panache which simplifies the creation of CRUD REST APIs based on JAX-RS and Hibernate ORM.</p>
</div>
<div class="paragraph">
<p>Discover this feature with <a href="/guides/rest-data-panache">this new dedicated guide</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="spring-cache-annotations"><a class="anchor" href="#spring-cache-annotations"></a>Spring Cache annotations</h4>
<div class="paragraph">
<p>Our Spring compatibility layer has one more feature: the support of the Spring Cache extensions.</p>
</div>
<div class="paragraph">
<p>We do not support every feature but you will be able to use most of them backed by the preexisting Cache extension based on Caffeine.</p>
</div>
</div>
<div class="sect3">
<h4 id="blaze-persistence"><a class="anchor" href="#blaze-persistence"></a>Blaze Persistence</h4>
<div class="paragraph">
<p>An extension for Blaze Persistence is now available in the Quarkus Platform.</p>
</div>
<div class="paragraph">
<p>A guide is coming soon.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="important-adjustments-in-existing-extensions"><a class="anchor" href="#important-adjustments-in-existing-extensions"></a>Important adjustments in existing extensions</h3>
<div class="sect3">
<h4 id="hibernate-orm"><a class="anchor" href="#hibernate-orm"></a>Hibernate ORM</h4>
<div class="paragraph">
<p>The Hibernate ORM extension now supports multitenancy.
Refer to our <a href="/guides/hibernate-orm#multitenancy">Hibernate ORM guide</a> to learn more about it.</p>
</div>
</div>
<div class="sect3">
<h4 id="agroal"><a class="anchor" href="#agroal"></a>Agroal</h4>
<div class="paragraph">
<p>The Agroal extension includes support for external pooling solutions e.g. pgagroal or Pgpool.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="full-changelog"><a class="anchor" href="#full-changelog"></a>Full changelog</h3>
<div class="paragraph">
<p>You can get the full changelogs of <a href="https://github.com/quarkusio/quarkus/releases/tag/1.5.0.CR1">1.5.0.CR1</a> and <a href="https://github.com/quarkusio/quarkus/releases/tag/1.5.0.Final">1.5.0.Final</a> on GitHub.</p>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="adopters-md"><a class="anchor" href="#adopters-md"></a>ADOPTERS.md</h2>
<div class="sectionbody">
<div class="paragraph">
<p>To share stories about Quarkus usage, we added <a href="https://github.com/quarkusio/quarkus/blob/master/ADOPTERS.md">an <code>ADOPTERS.md</code> file</a> at the root of the repository.</p>
</div>
<div class="paragraph">
<p>If you are using Quarkus and would like to be interviewed on our blog or simply added to this file, please contact us and we will be happy to oblige.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="contributors"><a class="anchor" href="#contributors"></a>Contributors</h2>
<div class="sectionbody">
<div class="paragraph">
<p>The Quarkus community is growing and has now <a href="https://github.com/quarkusio/quarkus/graphs/contributors">290 contributors</a>.
Many many thanks to each and everyone of them.</p>
</div>
<div class="paragraph">
<p>In particular for the 1.5 release, thanks to Aaron Rogers, Adrian Fiedler, Akito Kidani, Alex Soto, Alexey Loubyansky, Andrea Cosentino, Anh Le (Andy), Aurea Munoz, Luis Barreiro, Bill Burke, bobbyphilip, Bogdan Sukonnov, Cem Nura, Chris Laprun, Christoffer Rumohr, Christopher Chianelli, Claus Ibsen, Clement Escoffier, Daniel Petisme, David M. Lloyd, Dennis Baerten, Diogo Carleto, Diogo Quintela, Emmanuel Bernard, Erin Schnabel, Falko Modler, Ferran Puig, Galder Zamarreño, Geoffrey De Smet, George Gastaldi, George Sapountzis, Georgios Andrianakis, Greg. A, Guillaume Le Floch, Guillaume Nodet, Guillaume Smet, Gwenneg Lepage, Gytis Trikleris, Harald Reinmueller, Harsha R, Ioannis Canellos, Irena Kezic, Jacob Middag, Jaikiran Pai, Jan Martiska, Jan Martiška, Jason T. Greene, John O&#8217;Hara, Julian Cui, Justin Lee, Ken Finnigan, Ladislav Thon, Lovekesh Garg, Loïc Mathieu, Luka Lodrant, Manyanda Chitimbo, Marat Gubaidullin, Marcin Czeczko, Mario Fusco, Martin Kouba, Martin Panzer, Matthias Andreas Benkard, Matthias Harter, Mattia, Max Rydahl Andersen, Michael Schnell, Michal Szynkiewicz, Michał Górniewski, mklueh90, Oscar, oscarfh, Paul K Moore, Pavel.Vervenko, Pedro Igor, penehyba, Peter Palaga, Phillip Kruger, Robert Marcano, Romain Quinio, Rostislav Svoboda, Ruben R, Sanne Grinovero, schulzp, Sergey Beryozkin, ShubhamRwt, Stef Klaassen, Stephane Epardaud, Stuart Douglas, Stéphane Épardaud, Survi, Thomas Segismont, tibordigana, Timothy Power, Vincent Sevel and Yoann Rodière.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="come-join-us"><a class="anchor" href="#come-join-us"></a>Come Join Us</h2>
<div class="sectionbody">
<div class="paragraph">
<p>We value your feedback a lot so please report bugs, ask for improvements&#8230;&#8203; Let&#8217;s build something great together!</p>
</div>
<div class="paragraph">
<p>If you are a Quarkus user or just curious, don&#8217;t be shy and join our welcoming community:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>provide feedback on <a href="https://github.com/quarkusio/quarkus/issues">GitHub</a>;</p>
</li>
<li>
<p>craft some code and <a href="https://github.com/quarkusio/quarkus/pulls">push a PR</a>;</p>
</li>
<li>
<p>discuss with us on <a href="https://quarkusio.zulipchat.com/">Zulip</a> and on the <a href="https://groups.google.com/d/forum/quarkus-dev">mailing list</a>;</p>
</li>
<li>
<p>ask your questions on <a href="https://stackoverflow.com/questions/tagged/quarkus">Stack Overflow</a>.</p>
</li>
</ul>
</div>
</div>
</div>
              
          </div>
          <div class="width-12-12"><div class="share-page">
  <a class="share-linkedin" href="https://www.linkedin.com/shareArticle?mini=true&url=https://quarkus.io/blog/quarkus-1-5-final-released/&title=Quarkus 1.5 released - fast-jar packaging format, Picocli, gRPC, GraphQL and more" rel="nofollow" target="_blank" title="Share on LinkedIn">
    <img src="/assets/images/share-page/icons_social-linkedin.png"/>
  </a>
  <a class="share-twitter" href="https://twitter.com/intent/tweet?text=Quarkus 1.5 released - fast-jar packaging format, Picocli, gRPC, GraphQL and more&url=https://quarkus.io/blog/quarkus-1-5-final-released/&via=quarkusio&related=quarkusio" rel="nofollow" target="_blank" title="Share on Twitter">
    <img src="/assets/images/share-page/icons_social-twitter.png"/>
  </a>
  <a class="share-facebook" href="https://facebook.com/sharer.php?u=https://quarkus.io/blog/quarkus-1-5-final-released/" rel="nofollow" target="_blank" title="Share on Facebook">
    <img src="/assets/images/share-page/icons_social-facebook.png"/>
  </a>
  <a class="share-reddit" href="http://www.reddit.com/submit?url=https://quarkus.io/blog/quarkus-1-5-final-released/" onclick="window.open(this.href, 'pop-up', 'left=20,top=20,width=900,height=500,toolbar=1,resizable=0'); return false;" title="Share on Reddit" >
    <img src="/assets/images/share-page/icons_social-reddit.png"/>
  </a>
  <a class="share-email" href="mailto:?subject=Quarkus 1.5 released - fast-jar packaging format, Picocli, gRPC, GraphQL and more&amp;body=Quarkus 1.5 released - fast-jar packaging format, Picocli, gRPC, GraphQL and more https://quarkus.io/blog/quarkus-1-5-final-released/" title="Share via Email" >
    <img src="/assets/images/share-page/icons_social-email.png"/>
  </a>
</div>
</div>
        </div>
      </div>
    </div>
  </div>
</div>

  </div>

  <div class="content project-footer">
  <div class="footer-section">
    <div class="logo-wrapper">
      <a href="/"><img src="/assets/images/quarkus_logo_horizontal_rgb_reverse.svg" class="project-logo" title="Quarkus"></a>
    </div>
  </div>
  <div class="grid-wrapper">
    <p class="grid__item width-3-12">Quarkus is open. All dependencies of this project are available under the <a href='https://www.apache.org/licenses/LICENSE-2.0' target='_blank'>Apache Software License 2.0</a> or compatible license.<br /><br />This website was built with <a href='https://jekyllrb.com/' target='_blank'>Jekyll</a>, is hosted on <a href='https://pages.github.com/' target='_blank'>Github Pages</a> and is completely open source. If you want to make it better, <a href='https://github.com/quarkusio/quarkusio.github.io' target='_blank'>fork the website</a> and show us what you’ve got.</p>

    
      <div class="width-1-12 project-links">
        <span>Navigation</span>
        <ul class="footer-links width-1-12">
          
            <li><a href="/">Home</a></li>
          
            <li><a href="/guides">Guides</a></li>
          
            <li><a href="/community/#contributing">Contribute</a></li>
          
            <li><a href="/faq">FAQ</a></li>
          
            <li><a href="/get-started">Get Started</a></li>
          
        </ul>
      </div>
    
      <div class="width-1-12 project-links">
        <span>Contribute</span>
        <ul class="footer-links width-1-12">
          
            <li><a href="https://twitter.com/quarkusio">Follow us</a></li>
          
            <li><a href="https://github.com/quarkusio">GitHub</a></li>
          
            <li><a href="/security">Security&nbsp;policy</a></li>
          
        </ul>
      </div>
    
      <div class="width-1-12 project-links">
        <span>Get Help</span>
        <ul class="footer-links width-1-12">
          
            <li><a href="https://groups.google.com/forum/#!forum/quarkus-dev">Forums</a></li>
          
            <li><a href="https://quarkusio.zulipchat.com">Chatroom</a></li>
          
        </ul>
      </div>
    

    
      <div class="width-3-12 more-links">
        <span>Quarkus is made of community projects</span>
        <ul class="footer-links">
          
            <li><a href="https://vertx.io/" target="_blank">Eclipse Vert.x</a></li>
          
            <li><a href="https://microprofile.io" target="_blank">Eclipse MicroProfile</a></li>
          
            <li><a href="https://hibernate.org" target="_blank">Hibernate</a></li>
          
            <li><a href="https://netty.io" target="_blank">Netty</a></li>
          
            <li><a href="https://resteasy.github.io" target="_blank">RESTEasy</a></li>
          
            <li><a href="https://camel.apache.org" target="_blank">Apache Camel</a></li>
          
            <li><a href="https://code.quarkus.io/" target="_blank">And many more...</a></li>
          
        </ul>
      </div>
    
  </div>
</div>
  <div class="content redhat-footer">
  <div class="grid-wrapper">
    <span class="licence">
      <i class="fab fa-creative-commons"></i><i class="fab fa-creative-commons-by"></i> <a href="https://creativecommons.org/licenses/by/3.0/" target="_blank">CC by 3.0</a> | <a href="https://www.redhat.com/en/about/privacy-policy">Privacy Policy</a>
    </span>
    <span class="redhat">
      Sponsored by
    </span>
    <span class="redhat-logo">
      <a href="https://www.redhat.com/" target="_blank"><img src="/assets/images/redhat_reversed.svg"></a>
    </span>
  </div>
</div>


  <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js" integrity="sha384-8gBf6Y4YYq7Jx97PIqmTwLPin4hxIzQw5aDmUg/DDhul9fFpbbLcLh3nTIIDJKhx" crossorigin="anonymous"></script>
  <script type="text/javascript" src="/assets/javascript/mobile-nav.js"></script>
  <script type="text/javascript" src="/assets/javascript/scroll-down.js"></script>
  <script src="/assets/javascript/satellite.js" type="text/javascript"></script>
  <script src="https://quarkus.io/guides/javascript/config.js" type="text/javascript"></script>
  <script src="/assets/javascript/search-filter.js" type="text/javascript"></script>
  <script src="/assets/javascript/back-to-top.js" type="text/javascript"></script>
</body>

</html>
